﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using LevenBlog.Core.Entities;

namespace LevenBlog.Core.Data
{
    public interface ITrack
    {
        int Count(IDbProvider provider);

        int CountFromBlogID(IDbProvider provider, int blogID);

        void Insert(IDbProvider provider, lb_track track);

        void Update(IDbProvider provider, lb_track track);

        void Delete(IDbProvider provider, int id);

        void DeleteFromBlogID(IDbProvider provider, int id);

        lb_track Get(IDbProvider provider, int id);

        IList<lb_track> Get(IDbProvider provider, int pageSize, int currentPage);

        IList<lb_track> GetFromBlogID(IDbProvider provider, int blogID);

        IList<lb_track> GetFromBlogID(IDbProvider provider, int blogID, int pageSize, int currentPage);
    }
}
